using TestCases.CompareAssert.Core.Comparers.Collections;
using TestCases.CompareAssert.Core.Comparers.Generics;
using TestCases.CompareAssert.Core.Comparers.Members;
using TestCases.CompareAssert.Core.Comparers.Stateless;

namespace TestCases.CompareAssert.Settings
{
    public static class ObjectComparer
    {
        public const string Type = TypeComparer.IdentifiableName;
        public const string Properties = PropertiesComparer.IdentifiableName;
        public const string HashCode = HashCodeComparer.IdentifiableName;
        public const string Fields = FieldsComparer.IdentifiableName;
        public const string Reference = ReferenceComparer.IdentifiableName;
        public new const string Equals = EqualsComparer.IdentifiableName;
        public const string Equatable = EquatableComparer.IdentifiableName;
        public const string Comparable = ComparableComparer.IdentifiableName;
        public const string Enumerable = EnumerableComparer.IdentifiableName;
        public const string Dictionary = DictionaryComparer.IdentifiableName;
        public const string Collections = CollectionsComparer.IdentifiableName;
    }
}